set variable

Доступность

Flash Player 4.

Синтаксис

set("variableString", expression)

Параметры

variableString Строка. Имя переменной, которой должно быть присвоино значение параметра expression.

expression Значение, присваиваемое переменной .

Возвращает

Ничего.

Описание

Оператор; присваивает значение переменной. Переменная представляет собой по сути контейнер для данных. Контейнер всегда один и тот же, но содержимое может меняться. Изменяя значение переменной во время воспроизведения SWF ролика, Вы можете накапливать информацию о действиях пользователя, управлять воспроизведением ролика, определять, выполняется ли условие, и т.д.

Переменные могут содержать данные любого типа (например, String, Number, Boolean, Object или MovieClip). Таймлайн каждого SWF файла и мувиклипа имеет свой собственный набор переменных, а каждая отдельная переменная, в свою очередь, имеет значение, не зависящее от значения переменных других Таймлайнов.

Внутри оператора set не разрешено использовать строгое типизирование. Если Вы присвоите переменной значение, чей тип не совпадает с типом, указанным в классе, компилятор не выдаст ошибки.

Тонким моментом является тот факт, что параметр variableString является строкой, а не именем переменной. Если оператору set() в качестве первого параметра передать имя переменной без кавычек (""), до присвоения ей значения expression ее значение будет преобразовано в строку. Например, Если у вас есть строковая переменная myVariable со значением “Tuesday”, и Вы забыли взять имя переменной в скобки, Вы тем самым создадите новую переменную с именем Tuesday, которой и будет присвоено значение, которое Вы хотели присвоить myVariable:

var myVariable:String = "Tuesday";
set (myVariable, "Saturday");
trace(myVariable); // Выведет Tuesday
trace(Tuesday); // Выведет Saturday

Чтобы этого избежать, используйте кавычки (""):

set ("myVariable", "Saturday");
trace(myVariable); //Выведет Saturday

Пример

В следующем примере переменной присваивается значение. Переменно name присваивается значение "Jakob".

set("name", "Jakob");
trace(name);

Следующий код создает три новых переменных: caption0, caption1 и caption2:

for (var i = 0; i<3; i++) {
  set("caption"+i, "this is caption "+i);
}
trace(caption0);
trace(caption1);
trace(caption2);

См. также

var, call()